<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Part III. Smarty For Programmers</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="index.html" title="Smarty 3 Manual">
<link rel="up" href="index.html" title="Smarty 3 Manual">
<link rel="prev" href="chapter.debugging.console.html" title="Chapter 10. Debugging Console">
<link rel="next" href="charset.html" title="Chapter 11. Charset Encoding">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<div class="navheader">
<table width="100%" summary="Navigation header">
<tr><th colspan="3" align="center">Part III. Smarty For Programmers</th></tr>
<tr>
<td width="20%" align="left">
<a accesskey="p" href="chapter.debugging.console.html">Prev</a> </td>
<th width="60%" align="center"> </th>
<td width="20%" align="right"> <a accesskey="n" href="charset.html">Next</a>
</td>
</tr>
</table>
<hr>
</div>
<div class="part" title="Part III. Smarty For Programmers">
<div class="titlepage"><div><div><h1 class="title">
<a name="smarty.for.programmers"></a>Part III. Smarty For Programmers</h1></div></div></div>
<div class="toc">
<p><b>Table of Contents</b></p>
<dl>
<dt><span class="chapter"><a href="charset.html">11. Charset Encoding</a></span></dt>
<dd><dl><dt><span class="sect1"><a href="charset.html#charset.encoding">Charset Encoding</a></span></dt></dl></dd>
<dt><span class="chapter"><a href="smarty.constants.html">12. Constants</a></span></dt>
<dd><dl><dt><span class="sect1"><a href="smarty.constants.html#constant.smarty.dir">SMARTY_DIR</a></span></dt></dl></dd>
<dt><span class="chapter"><a href="api.variables.html">13. Smarty Class Variables</a></span></dt>
<dd><dl>
<dt><span class="sect1"><a href="api.variables.html#variable.allow.php.templates">$allow_php_templates</a></span></dt>
<dt><span class="sect1"><a href="variable.auto.literal.html">$auto_literal</a></span></dt>
<dt><span class="sect1"><a href="variable.autoload.filters.html">$autoload_filters</a></span></dt>
<dt><span class="sect1"><a href="variable.cache.dir.html">$cache_dir</a></span></dt>
<dt><span class="sect1"><a href="variable.cache.id.html">$cache_id</a></span></dt>
<dt><span class="sect1"><a href="variable.cache.lifetime.html">$cache_lifetime</a></span></dt>
<dt><span class="sect1"><a href="variable.cache.locking.html">$cache_locking</a></span></dt>
<dt><span class="sect1"><a href="variable.cache.modified.check.html">$cache_modified_check</a></span></dt>
<dt><span class="sect1"><a href="variable.caching.html">$caching</a></span></dt>
<dt><span class="sect1"><a href="variable.caching.type.html">$caching_type</a></span></dt>
<dt><span class="sect1"><a href="variable.compile.check.html">$compile_check</a></span></dt>
<dt><span class="sect1"><a href="variable.compile.dir.html">$compile_dir</a></span></dt>
<dt><span class="sect1"><a href="variable.compile.id.html">$compile_id</a></span></dt>
<dt><span class="sect1"><a href="variable.compile.locking.html">$compile_locking</a></span></dt>
<dt><span class="sect1"><a href="variable.compiler.class.html">$compiler_class</a></span></dt>
<dt><span class="sect1"><a href="variable.config.booleanize.html">$config_booleanize</a></span></dt>
<dt><span class="sect1"><a href="variable.config.dir.html">$config_dir</a></span></dt>
<dt><span class="sect1"><a href="variable.config.overwrite.html">$config_overwrite</a></span></dt>
<dt><span class="sect1"><a href="variable.config.read.hidden.html">$config_read_hidden</a></span></dt>
<dt><span class="sect1"><a href="variable.debug_template.html">$debug_tpl</a></span></dt>
<dt><span class="sect1"><a href="variable.debugging.html">$debugging</a></span></dt>
<dt><span class="sect1"><a href="variable.debugging.ctrl.html">$debugging_ctrl</a></span></dt>
<dt><span class="sect1"><a href="variable.default.config.type.html">$default_config_type</a></span></dt>
<dt><span class="sect1"><a href="variable.default.modifiers.html">$default_modifiers</a></span></dt>
<dt><span class="sect1"><a href="variable.default.resource.type.html">$default_resource_type</a></span></dt>
<dt><span class="sect1"><a href="variable.default.config.handler.func.html">$default_config_handler_func</a></span></dt>
<dt><span class="sect1"><a href="variable.default.template.handler.func.html">$default_template_handler_func</a></span></dt>
<dt><span class="sect1"><a href="variable.direct.access.security.html">$direct_access_security</a></span></dt>
<dt><span class="sect1"><a href="variable.error.reporting.html">$error_reporting</a></span></dt>
<dt><span class="sect1"><a href="variable.escape.html.html">$escape_html</a></span></dt>
<dt><span class="sect1"><a href="variable.force.cache.html">$force_cache</a></span></dt>
<dt><span class="sect1"><a href="variable.force.compile.html">$force_compile</a></span></dt>
<dt><span class="sect1"><a href="variable.left.delimiter.html">$left_delimiter</a></span></dt>
<dt><span class="sect1"><a href="variable.locking.timeout.html">$locking_timeout</a></span></dt>
<dt><span class="sect1"><a href="variable.merge.compiled.includes.html">$merge_compiled_includes</a></span></dt>
<dt><span class="sect1"><a href="variable.php.handling.html">$php_handling</a></span></dt>
<dt><span class="sect1"><a href="variable.plugins.dir.html">$plugins_dir</a></span></dt>
<dt><span class="sect1"><a href="variable.right.delimiter.html">$right_delimiter</a></span></dt>
<dt><span class="sect1"><a href="variable.smarty.debug.id.html">$smarty_debug_id</a></span></dt>
<dt><span class="sect1"><a href="variable.template.dir.html">$template_dir</a></span></dt>
<dt><span class="sect1"><a href="variable.trusted.dir.html">$trusted_dir</a></span></dt>
<dt><span class="sect1"><a href="variable.use.include.path.html">$use_include_path</a></span></dt>
<dt><span class="sect1"><a href="variable.use.sub.dirs.html">$use_sub_dirs</a></span></dt>
</dl></dd>
<dt><span class="chapter"><a href="api.functions.html">14. Smarty Class Methods</a></span></dt>
<dd><dl>
<dt>
<span class="refentrytitle"><a href="api.add.config.dir.html">addConfigDir()</a></span><span class="refpurpose"> — add a directory to the list of directories where config files are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.add.plugins.dir.html">addPluginsDir()</a></span><span class="refpurpose"> — add a directory to the list of directories where plugins are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.add.template.dir.html">addTemplateDir()</a></span><span class="refpurpose"> — add a directory to the list of directories where templates are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.append.html">append()</a></span><span class="refpurpose"> — append an element to an assigned array</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.append.by.ref.html">appendByRef()</a></span><span class="refpurpose"> — append values  by reference</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.assign.html">assign()</a></span><span class="refpurpose"> — assign variables/objects to the templates</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.assign.by.ref.html">assignByRef()</a></span><span class="refpurpose"> — assign values by reference</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.clear.all.assign.html">clearAllAssign()</a></span><span class="refpurpose"> — clears the values of all assigned variables</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.clear.all.cache.html">clearAllCache()</a></span><span class="refpurpose"> — clears the entire template cache</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.clear.assign.html">clearAssign()</a></span><span class="refpurpose"> — clears the value of an assigned variable</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.clear.cache.html">clearCache()</a></span><span class="refpurpose"> — clears the cache for a specific template</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.clear.compiled.tpl.html">clearCompiledTemplate()</a></span><span class="refpurpose"> — clears the compiled version of the specified template resource</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.clear.config.html">clearConfig()</a></span><span class="refpurpose"> — clears assigned config variables</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.compile.all.config.html">compileAllConfig()</a></span><span class="refpurpose"> — compiles all known config files</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.compile.all.templates.html">compileAllTemplates()</a></span><span class="refpurpose"> — compiles all known templates</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.config.load.html">configLoad()</a></span><span class="refpurpose"> —  loads config file  data and assigns it to the template</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.create.data.html">createData()</a></span><span class="refpurpose"> — creates a data object</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.create.template.html">createTemplate()</a></span><span class="refpurpose"> — returns a template object</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.disable.security.html">disableSecurity()</a></span><span class="refpurpose"> — disables template security</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.display.html">display()</a></span><span class="refpurpose"> — displays the template</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.enable.security.html">enableSecurity()</a></span><span class="refpurpose"> — enables template security</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.fetch.html">fetch()</a></span><span class="refpurpose"> — returns the template output</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.cache.dir.html">getCacheDir()</a></span><span class="refpurpose"> — return the directory where the rendered template's output is stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.compile.dir.html">getCompileDir()</a></span><span class="refpurpose"> — returns the directory where compiled templates are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.config.dir.html">getConfigDir()</a></span><span class="refpurpose"> — return the directory where config files are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.config.vars.html">getConfigVars()</a></span><span class="refpurpose"> — returns the given loaded config variable value</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.plugins.dir.html">getPluginsDir()</a></span><span class="refpurpose"> — return the directory where plugins are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.registered.object.html">getRegisteredObject()</a></span><span class="refpurpose"> — returns a reference to a registered object</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.tags.html">getTags()</a></span><span class="refpurpose"> — return tags used by template</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.template.dir.html">getTemplateDir()</a></span><span class="refpurpose"> — return the directory where templates are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.get.template.vars.html">getTemplateVars()</a></span><span class="refpurpose"> — returns  assigned variable value(s)</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.is.cached.html">isCached()</a></span><span class="refpurpose"> — returns true if there is a valid cache for this template</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.load.filter.html">loadFilter()</a></span><span class="refpurpose"> — load a filter plugin</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.mute.expected.errors.html">Smarty::muteExpectedErrors()</a></span><span class="refpurpose"> — mutes expected warnings and notices deliberately generated by Smarty</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.register.cacheresource.html">registerCacheResource()</a></span><span class="refpurpose"> — dynamically register CacheResources</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.register.class.html">registerClass()</a></span><span class="refpurpose"> — register a class for use in the templates</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.register.default.plugin.handler.html">registerDefaultPluginHandler()</a></span><span class="refpurpose"> — register a function which gets called on undefined tags</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.register.filter.html">registerFilter()</a></span><span class="refpurpose"> — dynamically register filters</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.register.plugin.html">registerPlugin()</a></span><span class="refpurpose"> — dynamically register plugins</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.register.object.html">registerObject()</a></span><span class="refpurpose"> — register an object for use in the templates</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.register.resource.html">registerResource()</a></span><span class="refpurpose"> — dynamically register resources</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.set.cache.dir.html">setCacheDir()</a></span><span class="refpurpose"> — set the directory where the rendered template's output is stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.set.compile.dir.html">setCompileDir()</a></span><span class="refpurpose"> — set the directory where compiled templates are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.set.config.dir.html">setConfigDir()</a></span><span class="refpurpose"> — set the directories where config files are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.set.plugins.dir.html">setPluginsDir()</a></span><span class="refpurpose"> — set the directories where plugins are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.set.template.dir.html">setTemplateDir()</a></span><span class="refpurpose"> — set the directories where templates are stored</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.template.exists.html">templateExists()</a></span><span class="refpurpose"> — checks whether the specified template exists</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.unregister.cacheresource.html">unregisterCacheResource()</a></span><span class="refpurpose"> — dynamically unregister a CacheResource plugin</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.unregister.filter.html">unregisterFilter()</a></span><span class="refpurpose"> — dynamically unregister a filter</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.unregister.plugin.html">unregisterPlugin</a></span><span class="refpurpose"> — dynamically unregister plugins</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.unregister.object.html">unregisterObject()</a></span><span class="refpurpose"> — dynamically unregister an object</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.unregister.resource.html">unregisterResource()</a></span><span class="refpurpose"> — dynamically unregister a resource plugin</span>
</dt>
<dt>
<span class="refentrytitle"><a href="api.test.install.html">testInstall()</a></span><span class="refpurpose"> — checks Smarty installation</span>
</dt>
</dl></dd>
<dt><span class="chapter"><a href="caching.html">15. Caching</a></span></dt>
<dd><dl>
<dt><span class="sect1"><a href="caching.html#caching.setting.up">Setting Up Caching</a></span></dt>
<dt><span class="sect1"><a href="caching.multiple.caches.html">Multiple Caches Per Page</a></span></dt>
<dt><span class="sect1"><a href="caching.groups.html">Cache Groups</a></span></dt>
<dt><span class="sect1"><a href="caching.cacheable.html">Controlling Cacheability of Output</a></span></dt>
<dd><dl>
<dt><span class="sect2"><a href="caching.cacheable.html#cacheability.sections">Cacheability of Template Section</a></span></dt>
<dt><span class="sect2"><a href="caching.cacheable.html#cacheability.tags">Cacheability of Tags</a></span></dt>
<dt><span class="sect2"><a href="caching.cacheable.html#cacheability.variables">Cacheability of Variables</a></span></dt>
<dt><span class="sect2"><a href="caching.cacheable.html#cacheability.plugins">Cacheability of Plugins</a></span></dt>
</dl></dd>
<dt><span class="sect1"><a href="caching.custom.html">Custom Cache Implementation</a></span></dt>
</dl></dd>
<dt><span class="chapter"><a href="resources.html">16. Resources</a></span></dt>
<dd><dl>
<dt><span class="sect1"><a href="resources.html#resources.file">File Template Resources</a></span></dt>
<dd><dl>
<dt><span class="sect2"><a href="resources.html#templates.from.template.dir">Templates from $template_dir</a></span></dt>
<dt><span class="sect2"><a href="resources.html#templates.from.specified.template.dir">Templates from a specific $template_dir</a></span></dt>
<dt><span class="sect2"><a href="resources.html#templates.from.any.dir">Templates from any directory</a></span></dt>
<dt><span class="sect2"><a href="resources.html#templates.windows.filepath">Windows Filepaths</a></span></dt>
</dl></dd>
<dt><span class="sect1"><a href="resources.string.html">String Template Resources</a></span></dt>
<dt><span class="sect1"><a href="resources.streams.html">Stream Template Resources</a></span></dt>
<dt><span class="sect1"><a href="resources.extends.html">Extends Template Resources</a></span></dt>
<dt><span class="sect1"><a href="resources.custom.html">Custom Template Resources</a></span></dt>
</dl></dd>
<dt><span class="chapter"><a href="advanced.features.html">17. Advanced Features</a></span></dt>
<dd><dl>
<dt><span class="sect1"><a href="advanced.features.html#advanced.features.security">Security</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.template.settings.html">Changing settings by template</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.template.inheritance.html">Template Inheritance</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.streams.html">Streams</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.objects.html">Objects</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.static.classes.html">Static Classes</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.prefilters.html">Prefilters</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.postfilters.html">Postfilters</a></span></dt>
<dt><span class="sect1"><a href="advanced.features.outputfilters.html">Output Filters</a></span></dt>
</dl></dd>
<dt><span class="chapter"><a href="plugins.html">18. Extending Smarty With Plugins</a></span></dt>
<dd><dl>
<dt><span class="sect1"><a href="plugins.html#plugins.howto">How Plugins Work</a></span></dt>
<dt><span class="sect1"><a href="plugins.naming.conventions.html">Naming Conventions</a></span></dt>
<dt><span class="sect1"><a href="plugins.writing.html">Writing Plugins</a></span></dt>
<dt><span class="sect1"><a href="plugins.functions.html">Template Functions</a></span></dt>
<dt><span class="sect1"><a href="plugins.modifiers.html">Modifiers</a></span></dt>
<dt><span class="sect1"><a href="plugins.block.functions.html">Block Functions</a></span></dt>
<dt><span class="sect1"><a href="plugins.compiler.functions.html">Compiler Functions</a></span></dt>
<dt><span class="sect1"><a href="plugins.prefilters.postfilters.html">Prefilters/Postfilters</a></span></dt>
<dt><span class="sect1"><a href="plugins.outputfilters.html">Output Filters</a></span></dt>
<dt><span class="sect1"><a href="plugins.resources.html">Resources</a></span></dt>
<dt><span class="sect1"><a href="plugins.inserts.html">Inserts</a></span></dt>
</dl></dd>
<dt><span class="chapter"><a href="bc.html">19. SmartyBC - Backwards Compatibility Wrapper</a></span></dt>
<dd><dl><dt><span class="sect1"><a href="bc.html#bc.class">SmartyBC class</a></span></dt></dl></dd>
</dl>
</div>
</div>
<div class="navfooter">
<hr>
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left">
<a accesskey="p" href="chapter.debugging.console.html">Prev</a> </td>
<td width="20%" align="center"> </td>
<td width="40%" align="right"> <a accesskey="n" href="charset.html">Next</a>
</td>
</tr>
<tr>
<td width="40%" align="left" valign="top">Chapter 10. Debugging Console </td>
<td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td>
<td width="40%" align="right" valign="top"> Chapter 11. Charset Encoding</td>
</tr>
</table>
</div>
</body>
</html>
